package com.ideaaedi.extspringcache.properties.nested;

import lombok.Data;

/**
 * (non-javadoc)
 *
 * @author <font size = "20" color = "#3CAA3C"><a href="https://gitee.com/JustryDeng">JustryDeng</a></font> <img
 * src="https://gitee.com/JustryDeng/shared-files/raw/master/JustryDeng/avatar.jpg" />
 * @since 1.0.0
 */
@Data
public class ExtRedisCaffeineProperties {
    
    /**
     * <pre>
     * true:
     *      默认对spring-context中的配置作出响应。  即：在spring-context中若存在相应配置或相关bean，那么会影响所有的Redis、Caffeine。
     *      此时，可通过在使用@Redis、@Caffeine注解时，显示的指定相关配置来覆盖 spring-context中的配置
     *
     * false:
     *      默认不对spring-context中的配置作出响应。即：不管spring-context是否存在相应配置或相关bean，都不会影响Redis、Caffeine。
     *      此时，在使用@Redis、@Caffeine注解时，显示的指定相关配置依然有效
     * </pre>
     */
    private boolean responseSpringContext = true;
    
    /**
     * <pre>
     * 是否以caffeine作为一级缓存
     *     true - caffeine作为一级缓存,redis作为二级缓存
     *     false - redis作为一级缓存,caffeine作为二级缓存
     * </pre>
     */
    private boolean caffeineAsFirstCache = true;
    
    /**
     * <pre>
     * (若一级缓存没数据，二级缓存有数据), 是否回填二级缓存的数据至一级缓存
     * </pre>
     */
    private boolean valueBackFill = true;
}
